<?php

#Arquivos MVC
require ('usuarioModel.php');
require ('usuarioView.php');
require ('controller.php');


/**
 *ProdutoController
 *
 * Esta classe contém as funções de acesso a dados do objetoProduto.
 *
 * @packageProdutoRegiao
 * @category controller
 * @author Janaína Paixão <janainap@gmail.com>
 * @copyright Janaína Paixao
 * @license Software Poprietário
 * @version v1.0
 * @since v1.0
 */


class UsuarioController extends Controller
{

	public $model;
	public $view;

	/**
	 * RegiaoController::_construct()
	 *
	 * Construtor da classe - Instancia os objetos model e view.
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function __construct()
	{
		$this->model = new usuarioModel();
		$this->view = new usuarioView();
	}


	/**
	 *ProdutoController::telaInicial()
	 *
	 * ListaProdutos cadastrados
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function telaInicial()
	{
    
		//Obtendo usuários
		$resultado = $this->model->selecionarUsuarios();

		//Listando usuários
		$this->view->listar($resultado);


	}
    
    /**
	 *ProdutoController::ajustes()
	 *
	 * ListaProdutos cadastrados
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function verificarAvisos()
	{
    
       $codigoUsuario = $this->model->postFormData('usuario');
       
       $resultado = $this->model->verificarAvisos($codigoUsuario);
       
       if ($resultado){
            echo '1';
       }else{
            echo '0';
       }

	}
    
    
    
    
    
    /**
	 *ProdutoController::ajustes()
	 *
	 * ListaProdutos cadastrados
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function ajustes()
	{
    
		//Obtendo usuários
		$GLOBALS['info']['lojas']= $this->model->combo_box('lojas','lojas','nome','codigo_loja','','','','',false);
        $GLOBALS['info']['vendedor']= $this->model->combo_box('vendedor','sis_usuarios','nome','codigo_usuario','','','','',false);

		//Listando usuários
		$this->view->ajustes();


	}


	/**
	 *ProdutoController::formulario()
	 *
	 * Exibe formulario para a manipulação de dados dosProdutos.
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function formulario()
	{
        
		$id = $this->model->getFormData('id');

        $GLOBALS['info']['codigoUsuario']=$id;
        
        
        //Obtendo grupos de acesso
        $resultado=$this->model->obterGruposAcesso();
      
        $i = 1;
		while ($resultado->fetch())
		{
			$grupoAcesso[] = "<div class='grid_4'><input name='grupoAcesso' type='radio' required='required' 
                             id='grupoAcesso' value='" . $resultado->codigoGrupoAcesso . "' class='formulario radim' />
                             &nbsp;" . $resultado->nome . "</div>";
			$i++;
		}
		
		
        if (!empty($id))
		{
			$grupoAcesso[] = "<input name='id' id='id' type='hidden' value='" . $id . "' class='formulario'/>";
		}


		$GLOBALS['info']['gruposAcesso'] = implode("\n", $grupoAcesso);
        
        //pega o grupo de acesso marcado.
        if (!empty($id))
		{

			$GLOBALS['info']['grupoAcesso'] = $this->model->selecionarDadosGrupoAcessoUsuario($id);

		} else
		{

			$GLOBALS['info']['grupoAcesso'] = "";
		}

	    
        //gera o grupo de usuarios.
        $resultado = $this->model->obterFiliais();
      
        $this->view->montarListaLojas($resultado);
        
        if (!empty($id))
		{

			$GLOBALS['info']['grupoLojasMarcados'] = $this->model->selecionarDadosGrupoLoja($id);

		} else
		{

			$GLOBALS['info']['grupoLojasMarcados'] = "";
		}
        
       
		//Exibindo formulário
		$this->view->formulario();

	}
    
    
    
    
    
    /**
	 *ProdutoController::formulario()
	 *
	 * Exibe formulario para a manipulação de dados dosProdutos.
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function formularioBasico()
	{

		$id = $this->model->getFormData('id');

        $GLOBALS['info']['codigoUsuario']=$id;
        
        
        
       
		//Exibindo formulário
		$this->view->formularioBasico();

	}
    
    
    
    
    /**
	 *ProdutoController::formulario()
	 *
	 * Exibe formulario para a manipulação de dados dosProdutos.
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function conectados()
	{
      
		$resultado = $this->model->selecionarUsuariosConectados();
        
        $this->view->exibirConectados($resultado);
        

	}
    
    
    
    /**
	 *ProdutoController::formulario()
	 *
	 * Exibe formulario para a manipulação de dados dosProdutos.
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function atualizarSessao()
	{

	   $this->model->conectar();
        
       $usuario = $this->model->postFormData('usuario');
       
        if(mysql_num_rows(mysql_query("SELECT * FROM sis_autenticacao WHERE codigo_usuario ='$usuario'")))
        {
            mysql_query("UPDATE sis_autenticacao SET time='".time()."' WHERE codigo_usuario ='$usuario'");
        } 
        
        $tempmins = ($tempmins) ? $tempmins : 45;
        
        mysql_query("UPDATE sis_autenticacao SET logado = 0 WHERE time<".(time()-($tempmins*60)));
            
       
	}


	/**
	 *ProdutoController::salvar()
	 *
	 * Salva informações daProdutos noProduto de dados
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function salvar(){
	   
        //$chave = $this->model->salvar('SisUsuarios','codigoUsuario',$regra);
        
        $chave = $this->model->salvarUsuarios();
        
        $this->model->salvarGrupoAcesso($chave);
		
        $json['sucesso'] = '1';
        $json['mensagem'] = 'Usuario cadastrado com sucesso!'; 
        $json['redirecionar'] = 'usuario.php';
        
        echo json_encode($json);
	}
    
    
    
    
    /**
	 *ProdutoController::salvar()
	 *
	 * Salva informações daProdutos noProduto de dados
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function salvarAjustes()
	{ 
		
        
        $this->model->salvarAjustes();
		
        $json['sucesso'] = '1';
        $json['mensagem'] = 'Dados alterados com sucesso!'; 

	   
        echo json_encode($json);
	}


	/**
	 *ProdutoController::obterDadosUsuario()
	 *
	 * Obtém os dados do grupo de acesso no formato JSON
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function obterDadosUsuario()
	{
		$id = $this->model->getFormData('id');
        
        
		if (!empty($id))
		{
			$json=$this->model->selecionarDados('SisUsuarios', $id);
              
            echo json_encode($json);
		}

	}


	/**
	 *ProdutoController::excluir()
	 *
	 * Método para excluir o registro do grupo de acesso especificado
	 *
	 * @access public
	 * @author Janaína Paixão <janainap@gmail.com>
	 * @since  v1.0
	 */
	public function excluir()
	{
   
		$chavePrimaria = $this->model->getFormData('id');

    	$this->model->excluir('SisUsuarios', $chavePrimaria);

		$json['sucesso'] = '1';
        $json['mensagem'] = 'Usuario removido com sucesso!'; 
        $json['redirecionar'] = 'usuario.php';
	   
        echo json_encode($json);


	}


}

?>